package com.course02.order_backend.config.Ost;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * 跨域配置类（Ost模块专属）
 * 解决前后端分离架构中的跨域请求问题
 */
@Configuration
public class CorsConfig implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        // 允许所有接口路径（/**）的跨域请求
        registry.addMapping("/**")
                // 允许前端的源地址（根据实际前端地址修改，本地开发通常是 http://localhost:8080）
                .allowedOrigins("http://192.168.21.146:8080")
                // 允许的HTTP请求方法（GET/POST等）
                .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
                // 允许的请求头（*表示所有）
                .allowedHeaders("*")
                // 允许携带Cookie等凭证信息（配合前端withCredentials使用）
                .allowCredentials(true)
                // 预检请求的有效期（秒），避免频繁预检
                .maxAge(3600);
    }
}